//
// Created by lidongwei on 2023/6/25.
//
//////////////////////后处理///////////////
#ifndef INFER_POST_PROCESSING_H
#define INFER_POST_PROCESSING_H


#include <algorithm>
#include <iostream>
#include <vector>
#include "cuda_def.h"
#include "pretreatment.h"


#include <opencv2/opencv.hpp>
typedef unsigned char uint8_t;



namespace handle
{
    class post_processing{

    public:
        ////////////////////////////////////////语义分割结果解析///////////////////////////////////////////
        static std::vector<uint8_t> segment_processing(std::vector<float> output, int classes, cv::Size feature_map_size,float object_threshold,uint8_t *labels_color);///语义分割结果后处理
        static cv::Mat drow(std::vector<uint8_t> result,cv::Mat img,cv::Size result_size);//将语义分割结果融入原图片进行可视化
    };

}



#endif //INFER_POST_PROCESSING_H
